package com.sys.service;

import com.sys.dto.PageResult;
import com.sys.entity.BizTask;

import java.util.List;

public interface TaskService {
    /**
     * 根据条件查询任务列表
     * 
     * @param domain     领域
     * @param difficulty 难度
     * @param age        年龄
     * @return 任务列表
     */
    List<BizTask> findTasks(String domain, Integer difficulty, Integer age);

    /**
     * 分页查询任务列表
     * 
     * @param domain     领域
     * @param difficulty 难度
     * @param age        年龄
     * @param pageNum    页码（从1开始）
     * @param pageSize   每页大小
     * @return 分页结果
     */
    PageResult<BizTask> findTasksPage(String domain, Integer difficulty, Integer age, Integer pageNum, Integer pageSize);

    /**
     * 添加自定义任务
     * 
     * @param task 任务信息
     * @return 添加成功的任务
     */
    BizTask addCustomTask(BizTask task);

    BizTask modifyCustomTask(BizTask task);

    /**
     * 从 Excel 文件批量初始化任务库
     */
    void initTasksFromExcel();
}